Disclosure generally pertinent to preferred embodiments of the present invention is included in the following related applications, all currently having the same assignee as the present application: "High-speed Video Frame Buffer Using Single Port Memory Chips," Ser. No. 60/015,349, filed on Apr. 12, 1996; and "Peer-to-peer Parallel Processing Graphics Accelerator," Ser. No. 08/761,104, filed on Dec. 5, 1996. These related applications are hereby incorporated herein, in their entirety, by reference.
It often is useful in various types of visualization projects to utilize large displays to present visual data to a viewer. This is especially true when the data to be displayed represents an interactive three-dimensional representation of a visual reality, such as an interactive flight simulator or other reality simulator. In such visual reality presentations, it is important that the viewer be immersed as much as possible into the scene being viewed. Consequently, there has been much research into providing many displays (i.e., monitors) around the viewer to trick the viewer into seeing the combination of displays as an accurate representation of a three-dimensional reality. This approach, however, often leads to three fundamental problems. Primarily, there is a tiling problem associated with placing many video displays near each other because a noticeable boarder often is visible between the various displays. This tiling problem may be partially solved by utilizing very large displays to minimize the total number of visible borders. This solution, however, leads to the second problem in that use of large displays commonly is impractical due to the high cost and difficulty of producing such large displays.
The third noted problem, which is the subject matter of this specification and included claims, is ensuring that all of the displays are properly synchronized in a manner that maintains the illusion of reality to a viewer viewing the various displays. A flight simulator, for example, encounters such problems. Specifically, a flight simulator typically shows a contiguous view across various displays of what is considered to be up, down, left, right, and straight ahead of the viewer. Each of these perspectives dynamically changes as the plane moves, in software, to different locations and orientations such as, for example, when the plane is (virtually) turned upside-down. As noted above, it is desirable for each perspective to synchronously change on each display with the other corresponding displays.
As is known by those skilled in the art, realistic displays require the image frames be displayed at a rate of at least twenty-four to frames per second to achieve a flicker-free display to the user. Various displays in known flight simulators, however, frequently show images of very different complexity, thus affecting the frame display rate. Specifically, for simple images such as the sky, very little computational effort is required by a corresponding graphics processor to render the image, and there generally should be no problems in rendering the image at thirty frames per second. Much more processing is required to render more complex images, however, such as the ground, which typically includes trees, grass, and buildings. As a consequence, it often is very difficult for the simulator to update the complex display quickly enough when synchronizing the complex display (e.g., the ground) with a relatively simple display (e.g., the sky). This problem is further complicated by changes in vantage point that result in movement of the images across display boundaries.
Many prior art solutions "solve" such synchronization problems by merely allowing the corresponding simple and complex frames to slip out of synchronization. That is, prior art solutions have merely enabled the displays to refresh as fast as they can in the expectation that they would stay roughly in sync. Undesirably, enabling the displays to be out of sync results in non-real effects, consequently limiting the impression of three-dimensional reality and degrading the effectiveness of the three-dimensional visual display system. For example, because rendering the sky is faster than rendering the ground, it is anomalous to have a sky-view chance (to reflect an orientation change, such as pivoting) before the ground-view changes.
Additional disclosure pertinent to the present invention may be found in the following references: DeFanti, T., Foster I., Papka, M., Stevens R., and Kuhfuss T, Overview of the I-WAY: Wide Area Visual Supercomputing, International Journal of Supercomputing Applications, 10(2/3), 1996, pp. 123-130; Pape. D. A Hardware-Independent Virtual Reality Development System, IEEE Computer Graphics and Applications, Vol 16.4, July 1996, pp. 44-47; Leigh, J., Johnson A., and DeFanti, T. CALVIN: an Immersimedia Design Environment Utilizing Heterogeneous Perspectives, Proceedings of IEEE International Conference on Multimedia Computing and Systems '96, Hiroshima, Japan, June 1996, pp. 20-23; Roy, T. M. and DeFanti. T. A., Interactive Visualization in a High Performance Computing Virtual Environment, Proceedings of the 1995 Simulation Multiconference, A. M. Turner (Ed.), The Society for Computer Simulation, pp. 471-476; Cruz-Neira, C., Sandin, D. J., and DeFanti, T. A., Surround-Screen Projection-Based Virtual Reality: The Design and Implementation of the CAVE, Proceedings of SIGGRAPH '93 Computer Graphics Conference, ACM SIGGRAPH. August 1993, pp. 135-142; and Miller, Ford, Sigeti and Webster, Multiscale Terrain Tiling for Real Time Rendering, Internet article at hyper-text transport protocol address http://-info.ece.ucdavis.edu/.about.miller/terrain.sub.-- render.sub.-- 1.html. These related documents are incorporated herein, in their entireties, by reference.